1
De llamadas directas a la API a la abstracción con LangChain
AI010Lesson 5
00:00

Más allá de la solicitud directa

Cuando se comienza con Modelos de Lenguaje Grandes (LLMs), los desarrolladores típicamente utilizan llamadas directas a la API (como la biblioteca Python de OpenAI) para enviar un prompt y recibir una respuesta. Aunque funcional, este enfoque se vuelve inmanejable a medida que las aplicaciones crecen.

El problema de la ausencia de estado

Los Modelos de Lenguaje Grandes son inherentemente sin estado. Cada vez que envías un mensaje, el modelo "olvida" quién eres y lo que dijiste antes. Cada interacción es una hoja en blanco. Para mantener una conversación, debes pasar manualmente toda la historia al modelo cada vez.

La solución de LangChain

LangChain introduce el ChatOpenAIenvoltorio de modelo. Esto no es solo un envoltorio por el simple hecho de tenerlo; es la base para modularidad. Al abstraer la llamada al modelo, podemos intercambiar modelos, insertar memoria y usar plantillas sin tener que reescribir toda nuestra base de código.

El escenario del pirata
Imagina un correo de cliente escrito en jerga de estilo "pirata". Para traducir esto en una respuesta corporativa formal, una llamada directa a la API requiere codificar las instrucciones. Con LangChain, separamos el "Estilo" (Pirata frente a Formal) del "Contenido" (el Correo) mediante abstracción.
main.py
TERMINALbash — 80x24
> Ready. Click "Run" to execute.
>
Question 1
Why do we say LLMs are "stateless"?
They do not have access to the internet.
They cannot generate the same response twice.
They do not inherently remember previous messages in a conversation.
They are only capable of processing text, not data states.
Challenge: Initialize ChatOpenAI
Solve the problem below.
You are building a creative writing assistant and need to initialize your first LangChain model.

Your task is to create a ChatOpenAI instance named my_llm with a temperature of 0.7 to allow for more creative (non-deterministic) responses.
Task
Write the Python code to import and initialize the model.
Solution:
from langchain_openai import ChatOpenAI
my_llm = ChatOpenAI(temperature=0.7)